//
//  HLFaceViewModelManager.h
//  YueYue
//
//  Created by hulu001 on 2024/1/11.
//

#import <Foundation/Foundation.h>
#import "HLFaceModuleDefine.h"
#import "HLFaceBaseViewModel.h"

NS_ASSUME_NONNULL_BEGIN

@interface HLFaceViewModelManager : NSObject


//记录当前选中的viewModel: 最新添加到 addToRenderLoop 为最近的viewModel
@property (nonatomic, assign, readonly) HLFaceDataType curType;

//当前选中的viewMode
@property (nonatomic, assign, readonly) HLFaceBaseViewModel *selectedViewModel;

- (void)addToRenderLoop:(HLFaceBaseViewModel *)viewModel;
- (void)removeFromRenderLoop:(HLFaceDataType)type;

- (void)startRender:(HLFaceDataType)type;
- (void)stopRender:(HLFaceDataType)type;

- (void)resetMaxFacesNumber:(HLFaceDataType)type;

//移除所有道具效果
- (void)removeAllViewModel;

- (NSArray *)allViewModels;

@end

NS_ASSUME_NONNULL_END
